package org.example.impl;

import org.example.dto.SysDto;
import org.springframework.scheduling.annotation.Async;
import org.springframework.stereotype.Service;

import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Set;
import java.util.concurrent.Future;

@Service
public class Process {

//    @Async(value = "asyncExecutor")
//    public Future<> analysis(SysDto sysDto,String busNo,byte[] bytes,String fileName){
//        // 执行业务逻辑
//        // 返回值根据业务需要可自定义类
//        return null;
//    }
//
//    public result saveInvoice(){
//        // 异步执行结果
//        Map<String,Future<>> futureMap = new HashMap<>();
//        for(a:as) {
//            // 异步执行并将异步结果暂存map中
//            Future<> future = analysis();
//            futureMap.put();
//        }
//        // 循环等待异步任务执行结果
//        while(futureMap.size() > 0){
//            // 遍历判断线程是否执行完成
//            Set<String> keySet = futureMap.keySet();
//            List<String> keyList = new ArrayList<>();
//            keyList.addAll(keySet);
//            for(String key: keyList){
//                Future<> pFuture = futureMap.get(key);
//                // 执行完成，获取执行结果
//                if(pFuture.isDone()){
//
//                }
//            }
//        }
//    }
}
